package cn.csc.module.pay.controller.app.jzb.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.gson.annotations.SerializedName;
import lombok.Data;

/**
 * 分账撤销
 * @author liuchuang
 * @version 1.0
 * @date 2024/1/15 14:21
 * @modify
 */
@Data
public class SubAccountCancelReqVO {
    /**
     * 原支付场景生成的子订单号
     */
    private String oldPaySubOrderNo;
    /**
     * 即市场定义的支付订单所属日期
     */
    private String oldPayOrderDate;
    /**
     * 原分账转出子账户
     */
    private String oldOutSubAcctNo;
    /**
     * 总的分账金额
     */
    private String tranTotalAmt;
    /**
     * 1到30条
     */
    private String ordersCount;
    /**
     * 交易信息数组
     */
    private TranItemArray[] tranItemArray;
    /**
     * 保留域1
     */
    private String reservedMsgOne;
    /**
     * 保留域2
     */
    private String reservedMsgTwo;
    /**
     * 子订单信息
     */
    @Data
    public static class TranItemArray{
        /**
         * 原分账子单号
         */
        @SerializedName("OldSubOrderNo")
        @JsonProperty("OldSubOrderNo")
        private String oldSubAcctOrderNo;
        /**
         * 原分账转入子账户
         */
        @SerializedName("OldInSubAcctNo")
        @JsonProperty("OldInSubAcctNo")
        private String oldInSubAcctNo;
        /**
         * 分账撤销金额
         */
        @SerializedName("SubAcctCancelAmt")
        @JsonProperty("SubAcctCancelAmt")
        private String subAcctCancelAmt;
        /**
         * 分账撤销备注
         */
        @SerializedName("SubAcctCancelRemark")
        @JsonProperty("SubAcctCancelRemark")
        private String subAcctCancelRemark;
        /**
         * 分账撤销保留域
         */
        @SerializedName("SubAcctCancelReservedMsg")
        @JsonProperty("SubAcctCancelReservedMsg")
        private String subAcctCancelReservedMsg;

    }


}
